.class public final Lcom/zuiapps/suite/utils/date/DateUtil;
.super Ljava/lang/Object;
.source "DateUtil.java"

# interfaces
.implements Ljava/io/Serializable;


# static fields
.field private static final DATETIME_FORMAT:Ljava/lang/String; = "yyyy-MM-dd HH:mm:ss"

.field private static final DATE_FORMAT:Ljava/lang/String; = "yyyy-MM-dd"

.field private static final DAY_BEGIN_STRING_HHMMSS:Ljava/lang/String; = " 00:00:00"

.field public static final DAY_END_STRING_HHMMSS:Ljava/lang/String; = " 23:59:59"

.field private static final HOUR_FORMAT:Ljava/lang/String; = "HH:mm:ss"

.field private static final MONTH_FORMAT:Ljava/lang/String; = "yyyy-MM"

.field public static final TS_FORMAT:Ljava/lang/String;

.field private static cale:Ljava/util/Calendar; = null

.field private static defaultDatePattern:Ljava/lang/String; = null

.field private static logger:Ljava/util/logging/Logger; = null

.field private static sdf_date_format:Ljava/text/SimpleDateFormat; = null

.field private static sdf_datetime_format:Ljava/text/SimpleDateFormat; = null

.field private static sdf_hour_format:Ljava/text/SimpleDateFormat; = null

.field private static final serialVersionUID:J = -0x2b01ce909c0278eeL

.field private static timePattern:Ljava/lang/String;


# direct methods
.method static constructor <clinit>()V
    .registers 2

    .prologue
    .line 18
    const-string v0, "DateUtil"

    invoke-static {v0}, Ljava/util/logging/Logger;->getLogger(Ljava/lang/String;)Ljava/util/logging/Logger;

    move-result-object v0

    sput-object v0, Lcom/zuiapps/suite/utils/date/DateUtil;->logger:Ljava/util/logging/Logger;

    .line 19
    const/4 v0, 0x0

    sput-object v0, Lcom/zuiapps/suite/utils/date/DateUtil;->defaultDatePattern:Ljava/lang/String;

    .line 20
    const-string v0, "HH:mm"

    sput-object v0, Lcom/zuiapps/suite/utils/date/DateUtil;->timePattern:Ljava/lang/String;

    .line 21
    invoke-static {}, Ljava/util/Calendar;->getInstance()Ljava/util/Calendar;

    move-result-object v0

    sput-object v0, Lcom/zuiapps/suite/utils/date/DateUtil;->cale:Ljava/util/Calendar;

    .line 22
    new-instance v0, Ljava/lang/StringBuilder;

    invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V

    invoke-static {}, Lcom/zuiapps/suite/utils/date/DateUtil;->getDatePattern()Ljava/lang/String;

    move-result-object v1

    invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v0

    const-string v1, " HH:mm:ss.S"

    invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v0

    invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v0

    sput-object v0, Lcom/zuiapps/suite/utils/date/DateUtil;->TS_FORMAT:Ljava/lang/String;

    .line 35
    new-instance v0, Ljava/text/SimpleDateFormat;

    const-string v1, "yyyy-MM-dd"

    invoke-direct {v0, v1}, Ljava/text/SimpleDateFormat;-><init>(Ljava/lang/String;)V

    sput-object v0, Lcom/zuiapps/suite/utils/date/DateUtil;->sdf_date_format:Ljava/text/SimpleDateFormat;

    .line 36
    new-instance v0, Ljava/text/SimpleDateFormat;

    const-string v1, "HH:mm:ss"

    invoke-direct {v0, v1}, Ljava/text/SimpleDateFormat;-><init>(Ljava/lang/String;)V

    sput-object v0, Lcom/zuiapps/suite/utils/date/DateUtil;->sdf_hour_format:Ljava/text/SimpleDateFormat;

    .line 37
    new-instance v0, Ljava/text/SimpleDateFormat;

    const-string v1, "yyyy-MM-dd HH:mm:ss"

    invoke-direct {v0, v1}, Ljava/text/SimpleDateFormat;-><init>(Ljava/lang/String;)V

    sput-object v0, Lcom/zuiapps/suite/utils/date/DateUtil;->sdf_datetime_format:Ljava/text/SimpleDateFormat;

    return-void
.end method

.method public constructor <init>()V
    .registers 1

    .prologue
    .line 42
    invoke-direct {p0}, Ljava/lang/Object;-><init>()V

    .line 43
    return-void
.end method

.method public static addDay(Ljava/lang/String;I)Ljava/lang/String;
    .registers 8
    .param p0, "date"    # Ljava/lang/String;
    .param p1, "i"    # I

    .prologue
    .line 248
    :try_start_0
    new-instance v1, Ljava/util/GregorianCalendar;

    const/4 v2, 0x0

    const/4 v3, 0x4

    invoke-virtual {p0, v2, v3}, Ljava/lang/String;->substring(II)Ljava/lang/String;

    move-result-object v2

    invoke-static {v2}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I

    move-result v2

    const/4 v3, 0x5

    const/4 v4, 0x7

    invoke-virtual {p0, v3, v4}, Ljava/lang/String;->substring(II)Ljava/lang/String;

    move-result-object v3

    invoke-static {v3}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I

    move-result v3

    add-int/lit8 v3, v3, -0x1

    const/16 v4, 0x8

    const/16 v5, 0xa

    .line 249
    invoke-virtual {p0, v4, v5}, Ljava/lang/String;->substring(II)Ljava/lang/String;

    move-result-object v4

    invoke-static {v4}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I

    move-result v4

    invoke-direct {v1, v2, v3, v4}, Ljava/util/GregorianCalendar;-><init>(III)V

    .line 250
    .local v1, "gCal":Ljava/util/GregorianCalendar;
    const/4 v2, 0x5

    invoke-virtual {v1, v2, p1}, Ljava/util/GregorianCalendar;->add(II)V

    .line 251
    sget-object v2, Lcom/zuiapps/suite/utils/date/DateUtil;->sdf_date_format:Ljava/text/SimpleDateFormat;

    invoke-virtual {v1}, Ljava/util/GregorianCalendar;->getTime()Ljava/util/Date;

    move-result-object v3

    invoke-virtual {v2, v3}, Ljava/text/SimpleDateFormat;->format(Ljava/util/Date;)Ljava/lang/String;
    :try_end_34
    .catch Ljava/lang/Exception; {:try_start_0 .. :try_end_34} :catch_36

    move-result-object v2

    .line 253
    .end local v1    # "gCal":Ljava/util/GregorianCalendar;
    :goto_35
    return-object v2

    .line 252
    :catch_36
    move-exception v0

    .line 253
    .local v0, "e":Ljava/lang/Exception;
    invoke-static {}, Lcom/zuiapps/suite/utils/date/DateUtil;->getDate()Ljava/lang/String;

    move-result-object v2

    goto :goto_35
.end method

.method public static addEndTime(Ljava/util/Date;)Ljava/util/Date;
    .registers 4
    .param p0, "param"    # Ljava/util/Date;

    .prologue
    .line 574
    move-object v0, p0

    .line 576
    .local v0, "date":Ljava/util/Date;
    const/16 v2, 0x17

    :try_start_3
    invoke-virtual {v0, v2}, Ljava/util/Date;->setHours(I)V

    .line 577
    const/16 v2, 0x3b

    invoke-virtual {v0, v2}, Ljava/util/Date;->setMinutes(I)V

    .line 578
    const/4 v2, 0x0

    invoke-virtual {v0, v2}, Ljava/util/Date;->setSeconds(I)V
    :try_end_f
    .catch Ljava/lang/Exception; {:try_start_3 .. :try_end_f} :catch_10

    .line 581
    :goto_f
    return-object v0

    .line 580
    :catch_10
    move-exception v1

    .line 581
    .local v1, "ex":Ljava/lang/Exception;
    goto :goto_f
.end method

.method public static addMonth(Ljava/lang/String;I)Ljava/lang/String;
    .registers 8
    .param p0, "date"    # Ljava/lang/String;
    .param p1, "i"    # I

    .prologue
    .line 268
    :try_start_0
    new-instance v1, Ljava/util/GregorianCalendar;

    const/4 v2, 0x0

    const/4 v3, 0x4

    invoke-virtual {p0, v2, v3}, Ljava/lang/String;->substring(II)Ljava/lang/String;

    move-result-object v2

    invoke-static {v2}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I

    move-result v2

    const/4 v3, 0x5

    const/4 v4, 0x7

    invoke-virtual {p0, v3, v4}, Ljava/lang/String;->substring(II)Ljava/lang/String;

    move-result-object v3

    invoke-static {v3}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I

    move-result v3

    add-int/lit8 v3, v3, -0x1

    const/16 v4, 0x8

    const/16 v5, 0xa

    .line 269
    invoke-virtual {p0, v4, v5}, Ljava/lang/String;->substring(II)Ljava/lang/String;

    move-result-object v4

    invoke-static {v4}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I

    move-result v4

    invoke-direct {v1, v2, v3, v4}, Ljava/util/GregorianCalendar;-><init>(III)V

    .line 270
    .local v1, "gCal":Ljava/util/GregorianCalendar;
    const/4 v2, 0x2

    invoke-virtual {v1, v2, p1}, Ljava/util/GregorianCalendar;->add(II)V

    .line 271
    sget-object v2, Lcom/zuiapps/suite/utils/date/DateUtil;->sdf_date_format:Ljava/text/SimpleDateFormat;

    invoke-virtual {v1}, Ljava/util/GregorianCalendar;->getTime()Ljava/util/Date;

    move-result-object v3

    invoke-virtual {v2, v3}, Ljava/text/SimpleDateFormat;->format(Ljava/util/Date;)Ljava/lang/String;
    :try_end_34
    .catch Ljava/lang/Exception; {:try_start_0 .. :try_end_34} :catch_36

    move-result-object v2

    .line 274
    .end local v1    # "gCal":Ljava/util/GregorianCalendar;
    :goto_35
    return-object v2

    .line 272
    :catch_36
    move-exception v0

    .line 274
    .local v0, "e":Ljava/lang/Exception;
    invoke-static {}, Lcom/zuiapps/suite/utils/date/DateUtil;->getDate()Ljava/lang/String;

    move-result-object v2

    goto :goto_35
.end method

.method public static addStartTime(Ljava/util/Date;)Ljava/util/Date;
    .registers 4
    .param p0, "param"    # Ljava/util/Date;

    .prologue
    .line 554
    move-object v0, p0

    .line 556
    .local v0, "date":Ljava/util/Date;
    const/4 v2, 0x0

    :try_start_2
    invoke-virtual {v0, v2}, Ljava/util/Date;->setHours(I)V

    .line 557
    const/4 v2, 0x0

    invoke-virtual {v0, v2}, Ljava/util/Date;->setMinutes(I)V

    .line 558
    const/4 v2, 0x0

    invoke-virtual {v0, v2}, Ljava/util/Date;->setSeconds(I)V
    :try_end_d
    .catch Ljava/lang/Exception; {:try_start_2 .. :try_end_d} :catch_e

    .line 561
    :goto_d
    return-object v0

    .line 560
    :catch_e
    move-exception v1

    .line 561
    .local v1, "ex":Ljava/lang/Exception;
    goto :goto_d
.end method

.method public static addYear(Ljava/lang/String;I)Ljava/lang/String;
    .registers 8
    .param p0, "date"    # Ljava/lang/String;
    .param p1, "i"    # I

    .prologue
    .line 289
    :try_start_0
    new-instance v1, Ljava/util/GregorianCalendar;

    const/4 v2, 0x0

    const/4 v3, 0x4

    invoke-virtual {p0, v2, v3}, Ljava/lang/String;->substring(II)Ljava/lang/String;

    move-result-object v2

    invoke-static {v2}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I

    move-result v2

    const/4 v3, 0x5

    const/4 v4, 0x7

    invoke-virtual {p0, v3, v4}, Ljava/lang/String;->substring(II)Ljava/lang/String;

    move-result-object v3

    invoke-static {v3}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I

    move-result v3

    add-int/lit8 v3, v3, -0x1

    const/16 v4, 0x8

    const/16 v5, 0xa

    .line 290
    invoke-virtual {p0, v4, v5}, Ljava/lang/String;->substring(II)Ljava/lang/String;

    move-result-object v4

    invoke-static {v4}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I

    move-result v4

    invoke-direct {v1, v2, v3, v4}, Ljava/util/GregorianCalendar;-><init>(III)V

    .line 291
    .local v1, "gCal":Ljava/util/GregorianCalendar;
    const/4 v2, 0x1

    invoke-virtual {v1, v2, p1}, Ljava/util/GregorianCalendar;->add(II)V

    .line 292
    sget-object v2, Lcom/zuiapps/suite/utils/date/DateUtil;->sdf_date_format:Ljava/text/SimpleDateFormat;

    invoke-virtual {v1}, Ljava/util/GregorianCalendar;->getTime()Ljava/util/Date;

    move-result-object v3

    invoke-virtual {v2, v3}, Ljava/text/SimpleDateFormat;->format(Ljava/util/Date;)Ljava/lang/String;
    :try_end_34
    .catch Ljava/lang/Exception; {:try_start_0 .. :try_end_34} :catch_36

    move-result-object v2

    .line 294
    .end local v1    # "gCal":Ljava/util/GregorianCalendar;
    :goto_35
    return-object v2

    .line 293
    :catch_36
    move-exception v0

    .line 294
    .local v0, "e":Ljava/lang/Exception;
    const-string v2, ""

    goto :goto_35
.end method

.method public static final convertDateToString(Ljava/util/Date;)Ljava/lang/String;
    .registers 2
    .param p0, "aDate"    # Ljava/util/Date;

    .prologue
    .line 484
    invoke-static {}, Lcom/zuiapps/suite/utils/date/DateUtil;->getDatePattern()Ljava/lang/String;

    move-result-object v0

    invoke-static {v0, p0}, Lcom/zuiapps/suite/utils/date/DateUtil;->getDateTime(Ljava/lang/String;Ljava/util/Date;)Ljava/lang/String;

    move-result-object v0

    return-object v0
.end method

.method public static convertStringToDate(Ljava/lang/String;)Ljava/util/Date;
    .registers 6
    .param p0, "strDate"    # Ljava/lang/String;
    .annotation system Ldalvik/annotation/Throws;
        value = {
            Ljava/text/ParseException;
        }
    .end annotation

    .prologue
    .line 522
    const/4 v0, 0x0

    .line 525
    .local v0, "aDate":Ljava/util/Date;
    :try_start_1
    invoke-static {}, Lcom/zuiapps/suite/utils/date/DateUtil;->getDatePattern()Ljava/lang/String;

    move-result-object v2

    invoke-static {v2, p0}, Lcom/zuiapps/suite/utils/date/DateUtil;->convertStringToDate(Ljava/lang/String;Ljava/lang/String;)Ljava/util/Date;
    :try_end_8
    .catch Ljava/text/ParseException; {:try_start_1 .. :try_end_8} :catch_a

    move-result-object v0

    .line 529
    return-object v0

    .line 526
    :catch_a
    move-exception v1

    .line 527
    .local v1, "pe":Ljava/text/ParseException;
    new-instance v2, Ljava/text/ParseException;

    invoke-virtual {v1}, Ljava/text/ParseException;->getMessage()Ljava/lang/String;

    move-result-object v3

    invoke-virtual {v1}, Ljava/text/ParseException;->getErrorOffset()I

    move-result v4

    invoke-direct {v2, v3, v4}, Ljava/text/ParseException;-><init>(Ljava/lang/String;I)V

    throw v2
.end method

.method public static final convertStringToDate(Ljava/lang/String;Ljava/lang/String;)Ljava/util/Date;
    .registers 5
    .param p0, "aMask"    # Ljava/lang/String;
    .param p1, "strDate"    # Ljava/lang/String;
    .annotation system Ldalvik/annotation/Throws;
        value = {
            Ljava/text/ParseException;
        }
    .end annotation

    .prologue
    .line 500
    const/4 v1, 0x0

    .line 501
    .local v1, "df":Ljava/text/SimpleDateFormat;
    const/4 v0, 0x0

    .line 502
    .local v0, "date":Ljava/util/Date;
    new-instance v1, Ljava/text/SimpleDateFormat;

    .end local v1    # "df":Ljava/text/SimpleDateFormat;
    invoke-direct {v1, p0}, Ljava/text/SimpleDateFormat;-><init>(Ljava/lang/String;)V

    .line 505
    .restart local v1    # "df":Ljava/text/SimpleDateFormat;
    :try_start_7
    invoke-virtual {v1, p1}, Ljava/text/SimpleDateFormat;->parse(Ljava/lang/String;)Ljava/util/Date;
    :try_end_a
    .catch Ljava/text/ParseException; {:try_start_7 .. :try_end_a} :catch_c

    move-result-object v0

    .line 509
    return-object v0

    .line 506
    :catch_c
    move-exception v2

    .line 507
    .local v2, "pe":Ljava/text/ParseException;
    throw v2
.end method

.method public static getDate()Ljava/lang/String;
    .registers 3

    .prologue
    .line 69
    :try_start_0
    sget-object v1, Lcom/zuiapps/suite/utils/date/DateUtil;->sdf_date_format:Ljava/text/SimpleDateFormat;

    sget-object v2, Lcom/zuiapps/suite/utils/date/DateUtil;->cale:Ljava/util/Calendar;

    invoke-virtual {v2}, Ljava/util/Calendar;->getTime()Ljava/util/Date;

    move-result-object v2

    invoke-virtual {v1, v2}, Ljava/text/SimpleDateFormat;->format(Ljava/util/Date;)Ljava/lang/String;
    :try_end_b
    .catch Ljava/lang/Exception; {:try_start_0 .. :try_end_b} :catch_d

    move-result-object v1

    .line 71
    .local v0, "e":Ljava/lang/Exception;
    :goto_c
    return-object v1

    .line 70
    .end local v0    # "e":Ljava/lang/Exception;
    :catch_d
    move-exception v0

    .line 71
    .restart local v0    # "e":Ljava/lang/Exception;
    const-string v1, ""

    goto :goto_c
.end method

.method public static final getDate(Ljava/util/Date;)Ljava/lang/String;
    .registers 4
    .param p0, "aDate"    # Ljava/util/Date;

    .prologue
    .line 416
    const/4 v0, 0x0

    .line 417
    .local v0, "df":Ljava/text/SimpleDateFormat;
    const-string v1, ""

    .line 418
    .local v1, "returnValue":Ljava/lang/String;
    if-eqz p0, :cond_12

    .line 419
    new-instance v0, Ljava/text/SimpleDateFormat;

    .end local v0    # "df":Ljava/text/SimpleDateFormat;
    invoke-static {}, Lcom/zuiapps/suite/utils/date/DateUtil;->getDatePattern()Ljava/lang/String;

    move-result-object v2

    invoke-direct {v0, v2}, Ljava/text/SimpleDateFormat;-><init>(Ljava/lang/String;)V

    .line 420
    .restart local v0    # "df":Ljava/text/SimpleDateFormat;
    invoke-virtual {v0, p0}, Ljava/text/SimpleDateFormat;->format(Ljava/util/Date;)Ljava/lang/String;

    move-result-object v1

    .line 422
    :cond_12
    return-object v1
.end method

.method public static declared-synchronized getDatePattern()Ljava/lang/String;
    .registers 2

    .prologue
    .line 403
    const-class v1, Lcom/zuiapps/suite/utils/date/DateUtil;

    monitor-enter v1

    :try_start_3
    const-string v0, "yyyy-MM-dd"

    sput-object v0, Lcom/zuiapps/suite/utils/date/DateUtil;->defaultDatePattern:Ljava/lang/String;

    .line 404
    sget-object v0, Lcom/zuiapps/suite/utils/date/DateUtil;->defaultDatePattern:Ljava/lang/String;
    :try_end_9
    .catchall {:try_start_3 .. :try_end_9} :catchall_b

    monitor-exit v1

    return-object v0

    .line 403
    :catchall_b
    move-exception v0

    monitor-exit v1

    throw v0
.end method

.method public static getDateTime()Ljava/lang/String;
    .registers 3

    .prologue
    .line 54
    :try_start_0
    sget-object v1, Lcom/zuiapps/suite/utils/date/DateUtil;->sdf_datetime_format:Ljava/text/SimpleDateFormat;

    sget-object v2, Lcom/zuiapps/suite/utils/date/DateUtil;->cale:Ljava/util/Calendar;

    invoke-virtual {v2}, Ljava/util/Calendar;->getTime()Ljava/util/Date;

    move-result-object v2

    invoke-virtual {v1, v2}, Ljava/text/SimpleDateFormat;->format(Ljava/util/Date;)Ljava/lang/String;
    :try_end_b
    .catch Ljava/lang/Exception; {:try_start_0 .. :try_end_b} :catch_d

    move-result-object v1

    .line 56
    .local v0, "e":Ljava/lang/Exception;
    :goto_c
    return-object v1

    .line 55
    .end local v0    # "e":Ljava/lang/Exception;
    :catch_d
    move-exception v0

    .line 56
    .restart local v0    # "e":Ljava/lang/Exception;
    const-string v1, ""

    goto :goto_c
.end method

.method public static final getDateTime(Ljava/lang/String;Ljava/util/Date;)Ljava/lang/String;
    .registers 4
    .param p0, "aMask"    # Ljava/lang/String;
    .param p1, "aDate"    # Ljava/util/Date;

    .prologue
    .line 464
    const/4 v0, 0x0

    .line 465
    .local v0, "df":Ljava/text/SimpleDateFormat;
    const-string v1, ""

    .line 467
    .local v1, "returnValue":Ljava/lang/String;
    if-nez p1, :cond_6

    .line 472
    :goto_5
    return-object v1

    .line 469
    :cond_6
    new-instance v0, Ljava/text/SimpleDateFormat;

    .end local v0    # "df":Ljava/text/SimpleDateFormat;
    invoke-direct {v0, p0}, Ljava/text/SimpleDateFormat;-><init>(Ljava/lang/String;)V

    .line 470
    .restart local v0    # "df":Ljava/text/SimpleDateFormat;
    invoke-virtual {v0, p1}, Ljava/text/SimpleDateFormat;->format(Ljava/util/Date;)Ljava/lang/String;

    move-result-object v1

    goto :goto_5
.end method

.method public static getDay()Ljava/lang/String;
    .registers 3

    .prologue
    .line 163
    :try_start_0
    sget-object v1, Lcom/zuiapps/suite/utils/date/DateUtil;->cale:Ljava/util/Calendar;

    const/4 v2, 0x5

    invoke-virtual {v1, v2}, Ljava/util/Calendar;->get(I)I

    move-result v1

    invoke-static {v1}, Ljava/lang/String;->valueOf(I)Ljava/lang/String;
    :try_end_a
    .catch Ljava/lang/Exception; {:try_start_0 .. :try_end_a} :catch_c

    move-result-object v1

    .line 165
    .local v0, "e":Ljava/lang/Exception;
    :goto_b
    return-object v1

    .line 164
    .end local v0    # "e":Ljava/lang/Exception;
    :catch_c
    move-exception v0

    .line 165
    .restart local v0    # "e":Ljava/lang/Exception;
    const-string v1, ""

    goto :goto_b
.end method

.method public static getDoubleMargin(Ljava/lang/String;Ljava/lang/String;)D
    .registers 16
    .param p0, "date1"    # Ljava/lang/String;
    .param p1, "date2"    # Ljava/lang/String;

    .prologue
    .line 205
    :try_start_0
    new-instance v3, Ljava/text/ParsePosition;

    const/4 v9, 0x0

    invoke-direct {v3, v9}, Ljava/text/ParsePosition;-><init>(I)V

    .line 206
    .local v3, "pos":Ljava/text/ParsePosition;
    new-instance v8, Ljava/text/ParsePosition;

    const/4 v9, 0x0

    invoke-direct {v8, v9}, Ljava/text/ParsePosition;-><init>(I)V

    .line 207
    .local v8, "pos1":Ljava/text/ParsePosition;
    sget-object v9, Lcom/zuiapps/suite/utils/date/DateUtil;->sdf_datetime_format:Ljava/text/SimpleDateFormat;

    invoke-virtual {v9, p0, v3}, Ljava/text/SimpleDateFormat;->parse(Ljava/lang/String;Ljava/text/ParsePosition;)Ljava/util/Date;

    move-result-object v0

    .line 208
    .local v0, "dt1":Ljava/util/Date;
    sget-object v9, Lcom/zuiapps/suite/utils/date/DateUtil;->sdf_datetime_format:Ljava/text/SimpleDateFormat;

    invoke-virtual {v9, p1, v8}, Ljava/text/SimpleDateFormat;->parse(Ljava/lang/String;Ljava/text/ParsePosition;)Ljava/util/Date;

    move-result-object v1

    .line 209
    .local v1, "dt2":Ljava/util/Date;
    invoke-virtual {v0}, Ljava/util/Date;->getTime()J

    move-result-wide v10

    invoke-virtual {v1}, Ljava/util/Date;->getTime()J
    :try_end_1f
    .catch Ljava/lang/Exception; {:try_start_0 .. :try_end_1f} :catch_2b

    move-result-wide v12

    sub-long v4, v10, v12

    .line 210
    .local v4, "l":J
    long-to-double v10, v4

    const-wide v12, 0x4194997000000000L

    div-double v6, v10, v12

    .line 213
    .end local v0    # "dt1":Ljava/util/Date;
    .end local v1    # "dt2":Ljava/util/Date;
    .end local v3    # "pos":Ljava/text/ParsePosition;
    .end local v4    # "l":J
    .end local v8    # "pos1":Ljava/text/ParsePosition;
    :goto_2a
    return-wide v6

    .line 212
    :catch_2b
    move-exception v2

    .line 213
    .local v2, "e":Ljava/lang/Exception;
    const-wide/16 v6, 0x0

    goto :goto_2a
.end method

.method public static getEndDate()Ljava/lang/String;
    .registers 2

    .prologue
    .line 116
    :try_start_0
    invoke-static {}, Lcom/zuiapps/suite/utils/date/DateUtil;->getDate()Ljava/lang/String;
    :try_end_3
    .catch Ljava/lang/Exception; {:try_start_0 .. :try_end_3} :catch_5

    move-result-object v1

    .line 118
    .local v0, "e":Ljava/lang/Exception;
    :goto_4
    return-object v1

    .line 117
    .end local v0    # "e":Ljava/lang/Exception;
    :catch_5
    move-exception v0

    .line 118
    .restart local v0    # "e":Ljava/lang/Exception;
    const-string v1, ""

    goto :goto_4
.end method

.method public static getMargin(Ljava/lang/String;Ljava/lang/String;)I
    .registers 14
    .param p0, "date1"    # Ljava/lang/String;
    .param p1, "date2"    # Ljava/lang/String;

    .prologue
    const/4 v3, 0x0

    .line 181
    :try_start_1
    new-instance v6, Ljava/text/ParsePosition;

    const/4 v8, 0x0

    invoke-direct {v6, v8}, Ljava/text/ParsePosition;-><init>(I)V

    .line 182
    .local v6, "pos":Ljava/text/ParsePosition;
    new-instance v7, Ljava/text/ParsePosition;

    const/4 v8, 0x0

    invoke-direct {v7, v8}, Ljava/text/ParsePosition;-><init>(I)V

    .line 183
    .local v7, "pos1":Ljava/text/ParsePosition;
    sget-object v8, Lcom/zuiapps/suite/utils/date/DateUtil;->sdf_date_format:Ljava/text/SimpleDateFormat;

    invoke-virtual {v8, p0, v6}, Ljava/text/SimpleDateFormat;->parse(Ljava/lang/String;Ljava/text/ParsePosition;)Ljava/util/Date;

    move-result-object v0

    .line 184
    .local v0, "dt1":Ljava/util/Date;
    sget-object v8, Lcom/zuiapps/suite/utils/date/DateUtil;->sdf_date_format:Ljava/text/SimpleDateFormat;

    invoke-virtual {v8, p1, v7}, Ljava/text/SimpleDateFormat;->parse(Ljava/lang/String;Ljava/text/ParsePosition;)Ljava/util/Date;

    move-result-object v1

    .line 185
    .local v1, "dt2":Ljava/util/Date;
    invoke-virtual {v0}, Ljava/util/Date;->getTime()J

    move-result-wide v8

    invoke-virtual {v1}, Ljava/util/Date;->getTime()J

    move-result-wide v10

    sub-long v4, v8, v10

    .line 186
    .local v4, "l":J
    const-wide/32 v8, 0x5265c00

    div-long v8, v4, v8
    :try_end_28
    .catch Ljava/lang/Exception; {:try_start_1 .. :try_end_28} :catch_2a

    long-to-int v3, v8

    .line 189
    .end local v0    # "dt1":Ljava/util/Date;
    .end local v1    # "dt2":Ljava/util/Date;
    .end local v4    # "l":J
    .end local v6    # "pos":Ljava/text/ParsePosition;
    .end local v7    # "pos1":Ljava/text/ParsePosition;
    :goto_29
    return v3

    .line 188
    :catch_2a
    move-exception v2

    .line 189
    .local v2, "e":Ljava/lang/Exception;
    goto :goto_29
.end method

.method public static getMaxDay(II)I
    .registers 6
    .param p0, "iyear"    # I
    .param p1, "imonth"    # I

    .prologue
    const/4 v2, 0x1

    .line 308
    const/4 v0, 0x0

    .line 310
    .local v0, "day":I
    if-eq p1, v2, :cond_19

    const/4 v3, 0x3

    if-eq p1, v3, :cond_19

    const/4 v3, 0x5

    if-eq p1, v3, :cond_19

    const/4 v3, 0x7

    if-eq p1, v3, :cond_19

    const/16 v3, 0x8

    if-eq p1, v3, :cond_19

    const/16 v3, 0xa

    if-eq p1, v3, :cond_19

    const/16 v3, 0xc

    if-ne p1, v3, :cond_1d

    .line 311
    :cond_19
    const/16 v0, 0x1f

    :goto_1b
    move v2, v0

    .line 321
    :goto_1c
    return v2

    .line 312
    :cond_1d
    const/4 v3, 0x4

    if-eq p1, v3, :cond_2b

    const/4 v3, 0x6

    if-eq p1, v3, :cond_2b

    const/16 v3, 0x9

    if-eq p1, v3, :cond_2b

    const/16 v3, 0xb

    if-ne p1, v3, :cond_2e

    .line 313
    :cond_2b
    const/16 v0, 0x1e

    goto :goto_1b

    .line 314
    :cond_2e
    :try_start_2e
    rem-int/lit8 v3, p0, 0x4

    if-nez v3, :cond_36

    rem-int/lit8 v3, p0, 0x64

    if-nez v3, :cond_3a

    :cond_36
    rem-int/lit16 v2, p0, 0x190
    :try_end_38
    .catch Ljava/lang/Exception; {:try_start_2e .. :try_end_38} :catch_40

    if-nez v2, :cond_3d

    .line 315
    :cond_3a
    const/16 v0, 0x1d

    goto :goto_1b

    .line 317
    :cond_3d
    const/16 v0, 0x1c

    goto :goto_1b

    .line 320
    :catch_40
    move-exception v1

    .line 321
    .local v1, "e":Ljava/lang/Exception;
    goto :goto_1c
.end method

.method public static getMonth()Ljava/lang/String;
    .registers 4

    .prologue
    .line 146
    :try_start_0
    new-instance v0, Ljava/text/DecimalFormat;

    invoke-direct {v0}, Ljava/text/DecimalFormat;-><init>()V

    .line 147
    .local v0, "df":Ljava/text/DecimalFormat;
    const-string v2, "00;00"

    invoke-virtual {v0, v2}, Ljava/text/DecimalFormat;->applyPattern(Ljava/lang/String;)V

    .line 148
    sget-object v2, Lcom/zuiapps/suite/utils/date/DateUtil;->cale:Ljava/util/Calendar;

    const/4 v3, 0x2

    invoke-virtual {v2, v3}, Ljava/util/Calendar;->get(I)I

    move-result v2

    add-int/lit8 v2, v2, 0x1

    int-to-long v2, v2

    invoke-virtual {v0, v2, v3}, Ljava/text/DecimalFormat;->format(J)Ljava/lang/String;
    :try_end_17
    .catch Ljava/lang/Exception; {:try_start_0 .. :try_end_17} :catch_19

    move-result-object v2

    .line 150
    :goto_18
    return-object v2

    .line 149
    :catch_19
    move-exception v1

    .line 150
    .local v1, "e":Ljava/lang/Exception;
    const-string v2, ""

    goto :goto_18
.end method

.method public static getMonthLastDay(I)Ljava/lang/String;
    .registers 8
    .param p0, "month"    # I

    .prologue
    const/16 v6, 0xd

    const/4 v5, 0x1

    const/4 v4, 0x0

    .line 593
    new-instance v0, Ljava/util/Date;

    invoke-direct {v0}, Ljava/util/Date;-><init>()V

    .line 594
    .local v0, "date":Ljava/util/Date;
    const/4 v3, 0x2

    new-array v1, v3, [[I

    new-array v3, v6, [I

    fill-array-data v3, :array_5c

    aput-object v3, v1, v4

    new-array v3, v6, [I

    fill-array-data v3, :array_7a

    aput-object v3, v1, v5

    .line 595
    .local v1, "day":[[I
    invoke-virtual {v0}, Ljava/util/Date;->getYear()I

    move-result v3

    add-int/lit16 v2, v3, 0x76c

    .line 596
    .local v2, "year":I
    rem-int/lit8 v3, v2, 0x4

    if-nez v3, :cond_28

    rem-int/lit8 v3, v2, 0x64

    if-nez v3, :cond_2c

    :cond_28
    rem-int/lit16 v3, v2, 0x190

    if-nez v3, :cond_44

    .line 597
    :cond_2c
    new-instance v3, Ljava/lang/StringBuilder;

    invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V

    aget-object v4, v1, v5

    aget v4, v4, p0

    invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

    move-result-object v3

    const-string v4, ""

    invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v3

    invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v3

    .line 599
    :goto_43
    return-object v3

    :cond_44
    new-instance v3, Ljava/lang/StringBuilder;

    invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V

    aget-object v4, v1, v4

    aget v4, v4, p0

    invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

    move-result-object v3

    const-string v4, ""

    invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v3

    invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v3

    goto :goto_43

    .line 594
    :array_5c
    .array-data 4
        0x0
        0x1e
        0x1c
        0x1f
        0x1e
        0x1f
        0x1e
        0x1f
        0x1f
        0x1e
        0x1f
        0x1e
        0x1f
    .end array-data

    :array_7a
    .array-data 4
        0x0
        0x1f
        0x1d
        0x1f
        0x1e
        0x1f
        0x1e
        0x1f
        0x1f
        0x1e
        0x1f
        0x1e
        0x1f
    .end array-data
.end method

.method public static getMonthLastDay(II)Ljava/lang/String;
    .registers 7
    .param p0, "year"    # I
    .param p1, "month"    # I

    .prologue
    const/16 v4, 0xd

    const/4 v3, 0x1

    const/4 v2, 0x0

    .line 611
    const/4 v1, 0x2

    new-array v0, v1, [[I

    new-array v1, v4, [I

    fill-array-data v1, :array_52

    aput-object v1, v0, v2

    new-array v1, v4, [I

    fill-array-data v1, :array_70

    aput-object v1, v0, v3

    .line 612
    .local v0, "day":[[I
    rem-int/lit8 v1, p0, 0x4

    if-nez v1, :cond_1d

    rem-int/lit8 v1, p0, 0x64

    if-nez v1, :cond_21

    :cond_1d
    rem-int/lit16 v1, p0, 0x190

    if-nez v1, :cond_39

    .line 613
    :cond_21
    new-instance v1, Ljava/lang/StringBuilder;

    invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V

    aget-object v2, v0, v3

    aget v2, v2, p1

    invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

    move-result-object v1

    const-string v2, ""

    invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v1

    invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v1

    .line 615
    :goto_38
    return-object v1

    :cond_39
    new-instance v1, Ljava/lang/StringBuilder;

    invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V

    aget-object v2, v0, v2

    aget v2, v2, p1

    invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

    move-result-object v1

    const-string v2, ""

    invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v1

    invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v1

    goto :goto_38

    .line 611
    nop

    :array_52
    .array-data 4
        0x0
        0x1e
        0x1c
        0x1f
        0x1e
        0x1f
        0x1e
        0x1f
        0x1f
        0x1e
        0x1f
        0x1e
        0x1f
    .end array-data

    :array_70
    .array-data 4
        0x0
        0x1f
        0x1d
        0x1f
        0x1e
        0x1f
        0x1e
        0x1f
        0x1f
        0x1e
        0x1f
        0x1e
        0x1f
    .end array-data
.end method

.method public static getMonthMargin(Ljava/lang/String;Ljava/lang/String;)I
    .registers 9
    .param p0, "date1"    # Ljava/lang/String;
    .param p1, "date2"    # Ljava/lang/String;

    .prologue
    const/4 v2, 0x0

    .line 229
    const/4 v3, 0x0

    const/4 v4, 0x4

    :try_start_3
    invoke-virtual {p1, v3, v4}, Ljava/lang/String;->substring(II)Ljava/lang/String;

    move-result-object v3

    invoke-static {v3}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I

    move-result v3

    const/4 v4, 0x0

    const/4 v5, 0x4

    invoke-virtual {p0, v4, v5}, Ljava/lang/String;->substring(II)Ljava/lang/String;

    move-result-object v4

    invoke-static {v4}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I

    move-result v4

    sub-int/2addr v3, v4

    mul-int/lit8 v1, v3, 0xc

    .line 230
    .local v1, "margin":I
    const/4 v3, 0x4

    const/4 v4, 0x7

    invoke-virtual {p1, v3, v4}, Ljava/lang/String;->substring(II)Ljava/lang/String;

    move-result-object v3

    const-string v4, "-0"

    const-string v5, "-"

    invoke-virtual {v3, v4, v5}, Ljava/lang/String;->replaceAll(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;

    move-result-object v3

    invoke-static {v3}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I

    move-result v3

    const/4 v4, 0x4

    const/4 v5, 0x7

    invoke-virtual {p0, v4, v5}, Ljava/lang/String;->substring(II)Ljava/lang/String;

    move-result-object v4

    const-string v5, "-0"

    const-string v6, "-"

    invoke-virtual {v4, v5, v6}, Ljava/lang/String;->replaceAll(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;

    move-result-object v4

    invoke-static {v4}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
    :try_end_3b
    .catch Ljava/lang/Exception; {:try_start_3 .. :try_end_3b} :catch_40

    move-result v2

    sub-int v2, v3, v2

    add-int/2addr v1, v2

    .line 233
    .end local v1    # "margin":I
    :goto_3f
    return v1

    .line 232
    :catch_40
    move-exception v0

    .local v0, "e":Ljava/lang/Exception;
    move v1, v2

    .line 233
    goto :goto_3f
.end method

.method public static getSimpleDateFormat()Ljava/lang/String;
    .registers 3

    .prologue
    .line 540
    new-instance v1, Ljava/text/SimpleDateFormat;

    invoke-direct {v1}, Ljava/text/SimpleDateFormat;-><init>()V

    .line 541
    .local v1, "formatter":Ljava/text/SimpleDateFormat;
    new-instance v2, Ljava/util/Date;

    invoke-direct {v2}, Ljava/util/Date;-><init>()V

    invoke-virtual {v1, v2}, Ljava/text/SimpleDateFormat;->format(Ljava/util/Date;)Ljava/lang/String;

    move-result-object v0

    .line 542
    .local v0, "NDateTime":Ljava/lang/String;
    return-object v0
.end method

.method public static getStartDate()Ljava/lang/String;
    .registers 3

    .prologue
    .line 101
    :try_start_0
    new-instance v1, Ljava/lang/StringBuilder;

    invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V

    invoke-static {}, Lcom/zuiapps/suite/utils/date/DateUtil;->getYear()Ljava/lang/String;

    move-result-object v2

    invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v1

    const-string v2, "-01-01"

    invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v1

    invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
    :try_end_16
    .catch Ljava/lang/Exception; {:try_start_0 .. :try_end_16} :catch_18

    move-result-object v1

    .line 103
    .local v0, "e":Ljava/lang/Exception;
    :goto_17
    return-object v1

    .line 102
    .end local v0    # "e":Ljava/lang/Exception;
    :catch_18
    move-exception v0

    .line 103
    .restart local v0    # "e":Ljava/lang/Exception;
    const-string v1, ""

    goto :goto_17
.end method

.method public static getTime()Ljava/lang/String;
    .registers 5

    .prologue
    .line 83
    const-string v1, " "

    .line 85
    .local v1, "temp":Ljava/lang/String;
    :try_start_2
    new-instance v2, Ljava/lang/StringBuilder;

    invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V

    invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v2

    sget-object v3, Lcom/zuiapps/suite/utils/date/DateUtil;->sdf_hour_format:Ljava/text/SimpleDateFormat;

    sget-object v4, Lcom/zuiapps/suite/utils/date/DateUtil;->cale:Ljava/util/Calendar;

    invoke-virtual {v4}, Ljava/util/Calendar;->getTime()Ljava/util/Date;

    move-result-object v4

    invoke-virtual {v3, v4}, Ljava/text/SimpleDateFormat;->format(Ljava/util/Date;)Ljava/lang/String;

    move-result-object v3

    invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v2

    invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
    :try_end_1e
    .catch Ljava/lang/Exception; {:try_start_2 .. :try_end_1e} :catch_20

    move-result-object v1

    .line 88
    .end local v1    # "temp":Ljava/lang/String;
    :goto_1f
    return-object v1

    .line 87
    .restart local v1    # "temp":Ljava/lang/String;
    :catch_20
    move-exception v0

    .line 88
    .local v0, "e":Ljava/lang/Exception;
    const-string v1, ""

    goto :goto_1f
.end method

.method public static getTimeNow(Ljava/util/Date;)Ljava/lang/String;
    .registers 2
    .param p0, "theTime"    # Ljava/util/Date;

    .prologue
    .line 434
    sget-object v0, Lcom/zuiapps/suite/utils/date/DateUtil;->timePattern:Ljava/lang/String;

    invoke-static {v0, p0}, Lcom/zuiapps/suite/utils/date/DateUtil;->getDateTime(Ljava/lang/String;Ljava/util/Date;)Ljava/lang/String;

    move-result-object v0

    return-object v0
.end method

.method public static getTimestamp()Ljava/lang/String;
    .registers 6

    .prologue
    .line 650
    sget-object v2, Lcom/zuiapps/suite/utils/date/DateUtil;->cale:Ljava/util/Calendar;

    invoke-virtual {v2}, Ljava/util/Calendar;->getTime()Ljava/util/Date;

    move-result-object v0

    .line 651
    .local v0, "date":Ljava/util/Date;
    new-instance v2, Ljava/lang/StringBuilder;

    invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V

    const-string v3, ""

    invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v2

    invoke-virtual {v0}, Ljava/util/Date;->getYear()I

    move-result v3

    add-int/lit16 v3, v3, 0x76c

    invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

    move-result-object v2

    invoke-virtual {v0}, Ljava/util/Date;->getMonth()I

    move-result v3

    invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

    move-result-object v2

    invoke-virtual {v0}, Ljava/util/Date;->getDate()I

    move-result v3

    invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

    move-result-object v2

    invoke-virtual {v0}, Ljava/util/Date;->getMinutes()I

    move-result v3

    invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

    move-result-object v2

    invoke-virtual {v0}, Ljava/util/Date;->getSeconds()I

    move-result v3

    invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

    move-result-object v2

    invoke-virtual {v0}, Ljava/util/Date;->getTime()J

    move-result-wide v4

    invoke-virtual {v2, v4, v5}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;

    move-result-object v2

    invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v1

    .line 652
    .local v1, "timestamp":Ljava/lang/String;
    return-object v1
.end method

.method public static getTimestamp(Ljava/util/Date;)Ljava/lang/String;
    .registers 5
    .param p0, "date"    # Ljava/util/Date;

    .prologue
    .line 662
    new-instance v1, Ljava/lang/StringBuilder;

    invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V

    const-string v2, ""

    invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v1

    invoke-virtual {p0}, Ljava/util/Date;->getYear()I

    move-result v2

    add-int/lit16 v2, v2, 0x76c

    invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

    move-result-object v1

    invoke-virtual {p0}, Ljava/util/Date;->getMonth()I

    move-result v2

    invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

    move-result-object v1

    invoke-virtual {p0}, Ljava/util/Date;->getDate()I

    move-result v2

    invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

    move-result-object v1

    invoke-virtual {p0}, Ljava/util/Date;->getMinutes()I

    move-result v2

    invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

    move-result-object v1

    invoke-virtual {p0}, Ljava/util/Date;->getSeconds()I

    move-result v2

    invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

    move-result-object v1

    invoke-virtual {p0}, Ljava/util/Date;->getTime()J

    move-result-wide v2

    invoke-virtual {v1, v2, v3}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;

    move-result-object v1

    invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v0

    .line 663
    .local v0, "timestamp":Ljava/lang/String;
    return-object v0
.end method

.method public static getYear()Ljava/lang/String;
    .registers 3

    .prologue
    .line 131
    :try_start_0
    sget-object v1, Lcom/zuiapps/suite/utils/date/DateUtil;->cale:Ljava/util/Calendar;

    const/4 v2, 0x1

    invoke-virtual {v1, v2}, Ljava/util/Calendar;->get(I)I

    move-result v1

    invoke-static {v1}, Ljava/lang/String;->valueOf(I)Ljava/lang/String;
    :try_end_a
    .catch Ljava/lang/Exception; {:try_start_0 .. :try_end_a} :catch_c

    move-result-object v1

    .line 133
    .local v0, "e":Ljava/lang/Exception;
    :goto_b
    return-object v1

    .line 132
    .end local v0    # "e":Ljava/lang/Exception;
    :catch_c
    move-exception v0

    .line 133
    .restart local v0    # "e":Ljava/lang/Exception;
    const-string v1, ""

    goto :goto_b
.end method

.method public static getYesterday()Ljava/lang/String;
    .registers 8

    .prologue
    .line 636
    invoke-static {}, Ljava/util/Calendar;->getInstance()Ljava/util/Calendar;

    move-result-object v3

    invoke-virtual {v3}, Ljava/util/Calendar;->getTimeInMillis()J

    move-result-wide v4

    const-wide/32 v6, 0x5265c00

    sub-long v0, v4, v6

    .line 637
    .local v0, "yestoday":J
    new-instance v2, Ljava/util/Date;

    invoke-direct {v2, v0, v1}, Ljava/util/Date;-><init>(J)V

    .line 638
    .local v2, "yestodayTime":Ljava/util/Date;
    invoke-static {v2}, Lcom/zuiapps/suite/utils/date/DateUtil;->getDate(Ljava/util/Date;)Ljava/lang/String;

    move-result-object v3

    return-object v3
.end method

.method public static isLeapyear(I)Z
    .registers 2
    .param p0, "year"    # I

    .prologue
    .line 628
    rem-int/lit8 v0, p0, 0x4

    if-nez v0, :cond_8

    rem-int/lit8 v0, p0, 0x64

    if-nez v0, :cond_c

    :cond_8
    rem-int/lit16 v0, p0, 0x190

    if-nez v0, :cond_e

    .line 629
    :cond_c
    const/4 v0, 0x1

    .line 631
    :goto_d
    return v0

    :cond_e
    const/4 v0, 0x0

    goto :goto_d
.end method

.method public static main([Ljava/lang/String;)V
    .registers 4
    .param p0, "args"    # [Ljava/lang/String;

    .prologue
    .line 667
    sget-object v0, Ljava/lang/System;->out:Ljava/io/PrintStream;

    new-instance v1, Ljava/lang/StringBuilder;

    invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V

    invoke-static {}, Lcom/zuiapps/suite/utils/date/DateUtil;->getYear()Ljava/lang/String;

    move-result-object v2

    invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v1

    const-string v2, "|"

    invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v1

    invoke-static {}, Lcom/zuiapps/suite/utils/date/DateUtil;->getMonth()Ljava/lang/String;

    move-result-object v2

    invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v1

    const-string v2, "|"

    invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v1

    invoke-static {}, Lcom/zuiapps/suite/utils/date/DateUtil;->getDate()Ljava/lang/String;

    move-result-object v2

    invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v1

    invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v1

    invoke-virtual {v0, v1}, Ljava/io/PrintStream;->println(Ljava/lang/String;)V

    .line 668
    return-void
.end method

.method public static rollDate(Ljava/util/Calendar;II)Ljava/lang/String;
    .registers 8
    .param p0, "cal"    # Ljava/util/Calendar;
    .param p1, "Type"    # I
    .param p2, "Span"    # I

    .prologue
    .line 384
    :try_start_0
    const-string v2, ""

    .line 386
    .local v2, "temp":Ljava/lang/String;
    move-object v1, p0

    .line 387
    .local v1, "rolcale":Ljava/util/Calendar;
    invoke-virtual {v1, p1, p2}, Ljava/util/Calendar;->add(II)V

    .line 388
    sget-object v3, Lcom/zuiapps/suite/utils/date/DateUtil;->sdf_date_format:Ljava/text/SimpleDateFormat;

    invoke-virtual {v1}, Ljava/util/Calendar;->getTime()Ljava/util/Date;

    move-result-object v4

    invoke-virtual {v3, v4}, Ljava/text/SimpleDateFormat;->format(Ljava/util/Date;)Ljava/lang/String;
    :try_end_f
    .catch Ljava/lang/Exception; {:try_start_0 .. :try_end_f} :catch_11

    move-result-object v2

    .line 391
    .end local v1    # "rolcale":Ljava/util/Calendar;
    .end local v2    # "temp":Ljava/lang/String;
    :goto_10
    return-object v2

    .line 390
    :catch_11
    move-exception v0

    .line 391
    .local v0, "e":Ljava/lang/Exception;
    const-string v2, ""

    goto :goto_10
.end method


# virtual methods
.method public getToday()Ljava/util/Calendar;
    .registers 6
    .annotation system Ldalvik/annotation/Throws;
        value = {
            Ljava/text/ParseException;
        }
    .end annotation

    .prologue
    .line 446
    new-instance v2, Ljava/util/Date;

    invoke-direct {v2}, Ljava/util/Date;-><init>()V

    .line 447
    .local v2, "today":Ljava/util/Date;
    new-instance v1, Ljava/text/SimpleDateFormat;

    invoke-static {}, Lcom/zuiapps/suite/utils/date/DateUtil;->getDatePattern()Ljava/lang/String;

    move-result-object v4

    invoke-direct {v1, v4}, Ljava/text/SimpleDateFormat;-><init>(Ljava/lang/String;)V

    .line 448
    .local v1, "df":Ljava/text/SimpleDateFormat;
    invoke-virtual {v1, v2}, Ljava/text/SimpleDateFormat;->format(Ljava/util/Date;)Ljava/lang/String;

    move-result-object v3

    .line 449
    .local v3, "todayAsString":Ljava/lang/String;
    new-instance v0, Ljava/util/GregorianCalendar;

    invoke-direct {v0}, Ljava/util/GregorianCalendar;-><init>()V

    .line 450
    .local v0, "cal":Ljava/util/Calendar;
    invoke-static {v3}, Lcom/zuiapps/suite/utils/date/DateUtil;->convertStringToDate(Ljava/lang/String;)Ljava/util/Date;

    move-result-object v4

    invoke-virtual {v0, v4}, Ljava/util/Calendar;->setTime(Ljava/util/Date;)V

    .line 451
    return-object v0
.end method

.method public rollDate(Ljava/lang/String;II)Ljava/lang/String;
    .registers 14
    .param p1, "orgDate"    # Ljava/lang/String;
    .param p2, "Type"    # I
    .param p3, "Span"    # I

    .prologue
    .line 338
    :try_start_0
    const-string v7, ""

    .line 340
    .local v7, "temp":Ljava/lang/String;
    const/4 v1, 0x0

    .line 341
    .local v1, "iPos":I
    const/16 v6, 0x2d

    .line 342
    .local v6, "seperater":C
    if-eqz p1, :cond_e

    invoke-virtual {p1}, Ljava/lang/String;->length()I

    move-result v8

    const/4 v9, 0x6

    if-ge v8, v9, :cond_11

    .line 343
    :cond_e
    const-string v7, ""

    .line 378
    .end local v1    # "iPos":I
    .end local v6    # "seperater":C
    .end local v7    # "temp":Ljava/lang/String;
    :goto_10
    return-object v7

    .line 346
    .restart local v1    # "iPos":I
    .restart local v6    # "seperater":C
    .restart local v7    # "temp":Ljava/lang/String;
    :cond_11
    invoke-virtual {p1, v6}, Ljava/lang/String;->indexOf(I)I

    move-result v1

    .line 347
    if-lez v1, :cond_5c

    .line 348
    const/4 v8, 0x0

    invoke-virtual {p1, v8, v1}, Ljava/lang/String;->substring(II)Ljava/lang/String;

    move-result-object v8

    invoke-static {v8}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I

    move-result v4

    .line 349
    .local v4, "iyear":I
    add-int/lit8 v8, v1, 0x1

    invoke-virtual {p1, v8}, Ljava/lang/String;->substring(I)Ljava/lang/String;

    move-result-object v7

    .line 355
    :goto_26
    invoke-virtual {v7, v6}, Ljava/lang/String;->indexOf(I)I

    move-result v1

    .line 356
    if-lez v1, :cond_6c

    .line 357
    const/4 v8, 0x0

    invoke-virtual {v7, v8, v1}, Ljava/lang/String;->substring(II)Ljava/lang/String;

    move-result-object v8

    invoke-static {v8}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I

    move-result v3

    .line 358
    .local v3, "imonth":I
    add-int/lit8 v8, v1, 0x1

    invoke-virtual {v7, v8}, Ljava/lang/String;->substring(I)Ljava/lang/String;

    move-result-object v7

    .line 364
    :goto_3b
    add-int/lit8 v3, v3, -0x1

    .line 365
    if-ltz v3, :cond_43

    const/16 v8, 0xb

    if-le v3, v8, :cond_44

    .line 366
    :cond_43
    const/4 v3, 0x0

    .line 369
    :cond_44
    invoke-static {v7}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I

    move-result v2

    .line 370
    .local v2, "iday":I
    const/4 v8, 0x1

    if-lt v2, v8, :cond_4f

    const/16 v8, 0x1f

    if-le v2, v8, :cond_50

    .line 371
    :cond_4f
    const/4 v2, 0x1

    .line 373
    :cond_50
    invoke-static {}, Ljava/util/Calendar;->getInstance()Ljava/util/Calendar;

    move-result-object v5

    .line 374
    .local v5, "orgcale":Ljava/util/Calendar;
    invoke-virtual {v5, v4, v3, v2}, Ljava/util/Calendar;->set(III)V

    .line 375
    invoke-static {v5, p2, p3}, Lcom/zuiapps/suite/utils/date/DateUtil;->rollDate(Ljava/util/Calendar;II)Ljava/lang/String;

    move-result-object v7

    .line 376
    goto :goto_10

    .line 351
    .end local v2    # "iday":I
    .end local v3    # "imonth":I
    .end local v4    # "iyear":I
    .end local v5    # "orgcale":Ljava/util/Calendar;
    :cond_5c
    const/4 v8, 0x0

    const/4 v9, 0x4

    invoke-virtual {p1, v8, v9}, Ljava/lang/String;->substring(II)Ljava/lang/String;

    move-result-object v8

    invoke-static {v8}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I

    move-result v4

    .line 352
    .restart local v4    # "iyear":I
    const/4 v8, 0x4

    invoke-virtual {p1, v8}, Ljava/lang/String;->substring(I)Ljava/lang/String;

    move-result-object v7

    goto :goto_26

    .line 360
    :cond_6c
    const/4 v8, 0x0

    const/4 v9, 0x2

    invoke-virtual {v7, v8, v9}, Ljava/lang/String;->substring(II)Ljava/lang/String;

    move-result-object v8

    invoke-static {v8}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I

    move-result v3

    .line 361
    .restart local v3    # "imonth":I
    const/4 v8, 0x2

    invoke-virtual {v7, v8}, Ljava/lang/String;->substring(I)Ljava/lang/String;
    :try_end_7a
    .catch Ljava/lang/Exception; {:try_start_0 .. :try_end_7a} :catch_7c

    move-result-object v7

    goto :goto_3b

    .line 377
    .end local v1    # "iPos":I
    .end local v3    # "imonth":I
    .end local v4    # "iyear":I
    .end local v6    # "seperater":C
    .end local v7    # "temp":Ljava/lang/String;
    :catch_7c
    move-exception v0

    .line 378
    .local v0, "e":Ljava/lang/Exception;
    const-string v7, ""

    goto :goto_10
.end method
